package main

import (
	"gorm.io/driver/mysql"
	"gorm.io/gen"
	"gorm.io/gorm"
)

func main() {
	//  建立数据库连接
	// ----------------分库-----------------------
	funcName("account_association")
	funcName("ar_active")
	funcName("ar_agent")
	funcName("ar_auth")
	funcName("ar_common")
	funcName("ar_finance")
	funcName("ar_games")
	funcName("ar_points")
	funcName("ar_red_packet")
	funcName("ar_safe")
	funcName("ar_secret")
	funcName("ar_user_auth")
	funcName("ar_users")
	funcName("ar_config")
	funcName("ar_platform")
	funcName("ar_analysis")
}

func funcName(src string) {
	g := gen.NewGenerator(gen.Config{
		//  设置输出路径
		OutPath: "db/" + src + "/query",
		Mode:    gen.WithoutContext | gen.WithDefaultQuery | gen.WithQueryInterface, // 选择生成模式
	})
	src = "root:ar_test!@#678@tcp(tidb-public.coolgame.world:4000)/" + src + "?charset=utf8mb4&collation=utf8mb4_unicode_ci&parseTime=true"
	gormdb, _ := gorm.Open(mysql.Open(src),
		&gorm.Config{})
	g.UseDB(gormdb) // 选择数据库连接

	g.ApplyBasic(g.GenerateAllTable()...)
	// 生成代码
	g.Execute()
}
